// 导入api内的方法或者axios
import {findAll,findById,query,save} from '@/api/order.js'

// 配置Vuex结构
export default {
  // vuex中的store分成模块来管理 需要在index.js中引入每一个Vuex模块进行配置 为了解决不同模块命名冲突的问题  将不同模块的namespaced 全部开启 之后 在不同的页面中再使用getters，actions，mutations，state的时候 需要根据不同的模块名来获取
  namespaced: true,
  state: {
    // 获取订单的时候后台总数据
    orderData:[],
    orderQueryData:[],
  },
  getters: {
    orderLines:state=>state.orderQueryData.orderLines,
    product:state=>state.orderQueryData.orderLines.product,
    waiter:state=>state.orderQueryData.waiter,
  },
  mutations: {
    changeOrderData(state,data){
      state.orderData=data;
    },
    // changeOrderIdData(state,data){
    //   state.orderIddata=data;
    // },
    changeOrderQueryData(state,data){
      state.orderQueryData=data;
    }
  },
  actions: {
    /**
     * 查找订单信息
     */
    findAll({ commit }, payload) {
      // payload,说明下面的findAll是api里面的
      findAll(payload).then(res => {
        commit('changeOrderData', res.data);
      })
    },
    /**
     * 新增或修改顾客信息save
     */
    // async save({commit},payload){
    //   //接受数据,发送请求,请求成功提示用户保存成功,处理page,分发findAll动作
    //   let res = await save(payload.form);
    //   // if(res.status===200){
    //   //   Notification({
    //   //     type:'success',
    //   //     title:"成功",
    //   //     message:"保存成功"
    //   //   });
    //   //   //查找数据_区分是新增查找还是修改查找
    //   //   dispatch("findAll",payload);        
        
    //   // }else{
    //   //   Notification({
    //   //     type:'error',
    //   //     title:"失败",
    //   //     message:"保存失败"
    //   //   })
    //   // }
    // },
    /**
     * 通过顾客id找地址信息
     */
    async query({commit},payload){
      let res = await query(payload);
      //保存数据到仓库
      commit('changeOrderQueryData',res.data);
    },
     /**
      * 通过顾客id或者状态或者服务员状态找到用户信息
      */
    //  query({commit},payload){
    //    query(payload).then(res=>{
    //      commit('changeOrderQueryData',res.data);
    //    })
    //    //保存数据到仓库
    // },
  },
    
}